package com.cuihanyu.newuniversityover.sql;

import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;

/**
 * SQLiteOpenHelper
 * 1.提供了onCreate() onUpgrade()等创建数据库 更新数据库的方法
 * 2.提供了获取数据库对象的函数
 */

public class MySQLiteHelper extends SQLiteOpenHelper {
    /**
     * 构造函数
     *
     * @param context 上下文对象
     * @param name    表示创建数据库的名称
     * @param factory 游标工厂
     * @param version 表示创建数据库的版本 >=1
     */
    public MySQLiteHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) {
        super(context, name, factory, version);
    }

    public MySQLiteHelper(Context context) {
        super(context, SQLiteUtil.DATABASE_NAME, null, SQLiteUtil.DATABASE_VERSION);
    }

    /*
    * 当数据库创建时回调的函数
    * sqLiteDatabase是数据库对象
    * */
    @Override
    public void onCreate(SQLiteDatabase sqLiteDatabase) {
        String sql = "create table " + SQLiteUtil.TABLE_NAME + "(" + SQLiteUtil._ID +
                " Integer primary key," + SQLiteUtil.TIME + " varchar(30)," + SQLiteUtil.CHAPTER_NAME + " varchar(30),"
                + SQLiteUtil.CHAPTER_SMALL + " varchar(30)," + SQLiteUtil.NOTE + " varchar(255))";
        sqLiteDatabase.execSQL(sql);
    }

    /*当数据库有版本更新时回调的函数
    * sqLiteDatabase数据库对象
    * i数据库旧版本
    * i1数据库新版本
    * */
    @Override
    public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1) {

    }

    /*当数据库打开时回调的函数
    * db数据库对象
    * */
    @Override
    public void onOpen(SQLiteDatabase db) {
        super.onOpen(db);
    }
}
